package control;

import java.awt.CardLayout;
import java.awt.event.ActionEvent;

import javax.swing.ImageIcon;

import model.ModeloObsrvable;
import vista.Sonido;
import vista.VentanaPrincipal;
import vista.VistaContenidoPistas;
import vista.VistaPanel3CardLayout;
import vista.VistaSalirDeEdificio;

public class ControladorSalirDeEdificio extends Controlador {

	private String situacionDeEscapeDelPolicia;
	
	public ControladorSalirDeEdificio(VentanaPrincipal ventanaPrincipal,
			ModeloObsrvable modeloDelJuego) {
		super(ventanaPrincipal, modeloDelJuego);
		
		
	}

	@Override
	public void actionPerformed(ActionEvent arg0) {
		situacionDeEscapeDelPolicia = modelo.salirDelEdificioActual();
		if (situacionDeEscapeDelPolicia!=null)
		{//si el policia fue increpado, muestro el escenario y la informacion de la situacion.
			//situacionDeEscapeDelPolicia.
			VistaSalirDeEdificio.cambiarLaPista(situacionDeEscapeDelPolicia);
			VistaSalirDeEdificio.cambiarElEscenario(new ImageIcon(VistaContenidoPistas.class.getResource("/vista/imagenes/escenarioHeridas.jpg")));
			modelo.notifyObservers();
			if (VistaSalirDeEdificio.escenarioArmaBlanca()){
				vista.sonido.detener();
				Sonido cuchillo = new Sonido("knife_stab.wav");
				cuchillo.reproducir();
				while (cuchillo.estaSonando()){}
				Sonido grito = new Sonido("grito.au");
				grito.reproducir();
			}else{
				vista.sonido.detener();
				Sonido metralleta = new Sonido("metralleta.au");
				metralleta.reproducir();
			}
			((CardLayout) vista.panel3.getLayout()).show(vista.panel3, VistaPanel3CardLayout.PANEL_SALIRDEEDIFICIO);
			//((VistaPanel3CardLayout) vista.panel3).cambiarA("panel_salirDeEdificio");
		}
		else
		{
			//si no paso nada hago lo mismo que el controlador de pistas.
			((CardLayout) vista.panel3.getLayout()).show(vista.panel3, VistaPanel3CardLayout.PANEL_EDIFICIOS);
			vista.panel4.setVisible(true); //vuelvo a activar los botones
			//modelo.notifyObservers();
		}
		
	}

}
